Re: [PATCH] iSeries virtual disk

From: Christoph Hellwig
Date: Fri Feb 27 2004 - 06:33:49 EST


> > it to the maximum value and then reset it in a magic even handler?
> > I think that logic needs some clarification.
>
> The "magic event handler" is synchronous with the probe_disk routine. I
> agree it is a bit confusing, but, at least I have the comment there about
> the side effects of the probe_disk routine. Changed slightly.

The code that is in Linus' tree is still b0rked:

- you set viodasd_max_disk in viodasd_open which looks completely bogus:
o the value is never used after module_init, and as long as module_init
and blkdev ->open under BKL they are serialized.
o even if they weren't you wouldn't ever get an open call for a device
> viodasd_max_disk
o that means if you actually got there it would either be the same or
decreased
o if it was decreased in parallel to module_init your loop in
module_init would be totally screwed.
- now to that loop in module_init:
o they only thing that it actually archives is that it breaks out of
the loop if a probe_disk fails - but you could archive that much
more easier by just returning an error from the probe_disk and
use a break out of the loop. The >= MAX_DISKNO check could then
easily happen on the i used as loop counter.

> > for lowend configurations (remember we have a 32bit dev_t now)
>
> Can I leave this for now?

It's really awkwards. And IBM will most likely want lots of disks soon
anyway :)

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