Linux-kernel mailing list archive 1999-20,: Re: andrea buffer code (2.2.9-C.gz)

# Re: andrea buffer code (2.2.9-C.gz)

Manfred Spraul (manfreds@colorfullife.com)
Thu, 20 May 1999 14:10:08 +0200

- Messages sorted by: [ date ][ thread ][ subject ][ author ]
- Next message: Ingo Molnar: "Re: andrea buffer code (2.2.9-C.gz)"
- Previous message: Jochen Heuer: "[2.2.9] performance problem on 100MBit network"
- Maybe in reply to: Manfred Spraul: "andrea buffer code (2.2.9-C.gz)"
- Next in thread: Manfred Spraul: "Re: andrea buffer code (2.2.9-C.gz)"

Ingo Molnar wrote:
> > Yes but I am not worried, and being more finegrined in SMP is more fun :-).
>
> you might not be worried but others are ... Manfred has asked good
> questions: is the particular lock you have 'expanded' into per-object
> locks contended in tests, have you measured things. OS development is
> never 'mathematically clean'.

I've checked the code, it seems that contention is impossible:
The lock is only acquired in 'end_io_async()', and that
function is usually called from 'end_that_request_first'
which must be called with the io_request_lock acquired.

Ok, we don't want to rely on that, the interface should be SMP safe,
but one global spinlock is sufficient.

Andrea wrote:
> Since the wastage will be only in SMP I don't care too much, I
> would prefer to remove the buffer field that is useless instead
> of dropping a nice per-pagemap spinlock.

That's an invalid argument: remove both if that's possible, but
you cannot argue 'because I saved memory with the buffer/inode field
I can waste the memory somewhere else'.

    --
    Manfred

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

- Next message: Ingo Molnar: "Re: andrea buffer code (2.2.9-C.gz)"
- Previous message: Jochen Heuer: "[2.2.9] performance problem on 100MBit network"
- Maybe in reply to: Manfred Spraul: "andrea buffer code (2.2.9-C.gz)"
- Next in thread: Manfred Spraul: "Re: andrea buffer code (2.2.9-C.gz)"