which is just fine for a single process writing data. But
for many processes, they *all* go and bring things back into
balance, and too much data gets written out.

- The

go_and_write(this much)

logic is inoperative, because I turned off the ->writeback_mapping()
function in ext2. So a call to writeback_unlocked_inodes(this_much)
doesn't actually decrement and test *this_much. It will walk every
inode, all the time. Silly.

So quickly fixing the above things, the amount of dirty+writeback
memory in the machine nicely stabilises at 500 megabytes across
the run.

This is a patch which avoids resetting the termios settings to default
values (9600 Baud etc.) in each call to pl2303_open (). It does this
only on the first call to pl2303_set_termios. After that it sets the
termios to the last stored values.

This way commands like
stty -F /dev/ttyUSB0 115200
work the same way as with other serial ttys.

looking through printer.c in preparation for shifting devfs
support to usbcore I noticed that printer advertises a device
through devfs before it can be opened.
As devfs, or more precisely devfsd can be used to trigger actions
this matters and is wrong.

fs/exportfs/expfs.c:dprintk
- Fix macro varargs usage, you need to specify a variable name
before the triple dot or else most current compilers complain.
See include/linux/ext2_fs.h:ext2_debug for another example where
it is done correctly.

fs/autofs/inode.c:parse_options
- Fix bug in strsep/strchr changes, dereference *this_char
not *value at top of while loop. This matches how the same
code in fs/autofs4/inode.c looks right now.
Withtout this autofs loading causes an OOPS as the first
time through the loop *value is dereferencing a NULL pointer.

Patch fixes a couple of idiotic bugs in notify_change() (my
fault). Unary operations have higher priority than binary ones, so
if (!valid & ATTR_MODE) doesn't do the right thing. I plead temporary
braindamage...

The below patch on 2.5.12 takes the 'dbench 32' throughput on a
1024 megabyte machine from 35 megs/sec up to 125 megs/sec.
That's on the second run. The first run is much slower because
the ext2 bitmaps aren't in cache.

This patch has the last bit of Justin Gibb's patch
described in:
http://marc.theaimsgroup.com/?l=linux-scsi&m=101200279101550&w=2
[this bit for the sd driver]

There is also a major code cleanup of the sd driver with
documentation headers added and a few obvious bugs fixed
described in:
http://marc.theaimsgroup.com/?l=linux-scsi&m=101798201714399&w=2
I did this cleanup.

Justin's patch has been in Dave's tree for several months while
my code cleanup patch has been there since 2.5.9-dj1 .

The attachment is part of a patch from Justin Gibbs
described in:
http://marc.theaimsgroup.com/?l=linux-scsi&m=101200279101550&w=2

The original patch was targeted at lk 2.4 and Dave forwarded
ported it into 2.5. Other bits (e.g. sr) have already found
there way into your tree. One bit in the sd driver will be
included in my following patch.

- put block size in bdev->bd_block_size, make do_open() and
check_partition() to set it (see above), switch set_blocksize() and
block_size() to use of ->bd_block_size. Remove manipulations with
blksize_size[] from drivers, remove blksize_size[] itself.