Re: [RFT] Support for ~2144 SCSI discs

Jeremy Higdon (jeremy@classic.engr.sgi.com)
Tue, 31 Jul 2001 00:41:32 -0700 (PDT)


With the sard patch and a 64 bit system, you start having
trouble at around 103 configured disks, because of the following
line in sd_init() (sd.c), because kmalloc doesn't like allocating
large chunks of memory:

sd = kmalloc((sd_template.dev_max << 4) *
sizeof(struct hd_struct),
GFP_ATOMIC);

Without sard, you'd have problems past 512 disks.

With the sard patch, the hd_struct looks like the following:

struct hd_struct {
long start_sect;
long nr_sects;
devfs_handle_t de; /* primary (master) devfs entry */

int number; /* stupid old code wastes space */

/* Performance stats: */
unsigned int ios_in_flight;
unsigned int io_ticks;
unsigned int last_idle_time;
unsigned int last_queue_change;
unsigned int aveq;

unsigned int rd_ios;
unsigned int rd_merges;
unsigned int rd_ticks;
unsigned int rd_sectors;
unsigned int wr_ios;
unsigned int wr_merges;
unsigned int wr_ticks;
unsigned int wr_sectors;
};

The caveat is that I'm looking at a patch that is a few months old (I
couldn't find where the latest version of the kernel patch is).

jeremy

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/