Re: [dm-devel] [PATCH 1/2] block: fix leaks associated with discardrequest payload

From: Mikulas Patocka
Date: Thu Jul 01 2010 - 08:28:54 EST


> > It is either/or choice. If the interface isn't fixed NOW, the existing
> > flawed zeroed-page-allocation interface gets into RHEL
>
> That's a false dichotomy. You might see an either apply this hack now
> or support the interface choice with RHEL, but upstream has the option
> to fix stuff correctly. RHEL has never needed my blessing to apply
> random crap to their kernel before ... why is this patch any different?

We can't apply non-upstream patches (except few exceptions such as
dm-raid45). It makes sense, non-upstream patches have smaller test
coverage.

> And the rest of this rubbish is based on that false premise. It might
> help you to take off your SCSI antipathy and see this as a system
> problem: it actually originates in block and spills out from there.
> Thus it requires a system solution.
>
> James

Imagine this: I take a FPGA PCI board, I design a storage controller on it
and this controller will need 3 pages to process a discard request. Now I
say: I refuse to allocate these 3 pages in the driver because the driver
would look ugly --- instead, I demand that everyone in the Linux kernel
who creates a discard request must attach 3 pages to the request for my
driver.

Do you think it is correct behavior? Would you accept such a driver? I
guess you wouldn't! But this is the same thing that you are doing with
SCSI.

Now lets take it a bit further and I say "I may clean up the driver for my
controller one day, when I do it, I remove that 3-page requirement --- and
then, everyone who allocated those pages will have to change his code and
remove the allocations".

And this is what you are intending to do with SCSI.

Mikulas
--
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/