Re: [PATCH 4.14 00/17] V4.14 backport of more 32-bit arm spectre patches

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jan 16, 2019 at 02:27:13PM -0500, David Long wrote:
> On 1/15/19 12:19 PM, Greg KH wrote:
> > On Tue, Jan 15, 2019 at 05:06:59PM +0000, Russell King - ARM Linux admin wrote:
> > > On Tue, Jan 15, 2019 at 05:30:51PM +0100, Greg KH wrote:
> > > > On Tue, Jan 15, 2019 at 11:07:08AM -0500, David Long wrote:
> > > > > On 1/15/19 10:45 AM, Greg KH wrote:
> > > > > > On Thu, Jan 10, 2019 at 12:51:33PM -0500, David Long wrote:
> > > > > > > From: "David A. Long" <dave.long@xxxxxxxxxx>
> > > > > > > 
> > > > > > > V4.14 backport of spectre patches from Russell M. King's spectre branch.
> > > > > > 
> > > > > > If I take these, than 4.19 is vulnerable.  So someone upgrading from
> > > > > > 4.14 to 4.19 will regress :(
> > > > > > 
> > > > > > Can you please send me a 4.19 series so I can apply that before this
> > > > > > one?
> > > > > > 
> > > > > > thanks,
> > > > > > 
> > > > > > greg k-h
> > > > > > 
> > > > > 
> > > > > 
> > > > > OK, didn't think about that being a problem. Working on it. Pretty sure
> > > > > there's exactly one patch needed for that.
> > > > 
> > > > one?  All of these except one showed up in 4.20 and were not backported
> > > > to 4.19 from what I can tell.  The last one is in 5.0-rc1 and not even
> > > > backported to 4.20 either, which means someone messed up and didn't tag
> > > > it properly with a cc: stable patch :(
> > > 
> 
> My bad, I see now I was looking at v4.20 when I made that comment, not
> v4.19.
> 
> > > Or they didn't think it was important enough to warrant backporting.
> > 
> > Fair enough, then I have to ask why it's included in this series at
> > all...
> > 
> 
> I've been backporting all "spectre" branch patches as kept in the linux-arm
> repo, with the assumption they're all important. If the last patch is not
> deemed worthy of going into stable now would be a good time to declare it so
> as I have patch sets for v4.19 and v4.9 stable versions about ready to
> publish.

Let me be absolutely clear:

The final patch is a minor fix for the previous patch.  I do not
consider it important enough to warrant backporting to 4.19 on an
automated basis - if it was important, I could have sent it to Linus
before 4.19 was released.  That is not to say that there is no reason
not to apply it to 4.19, I just don't deem it important enough to have
a Cc to stable (especially as *none* of the ARM Spectre patches have a
Cc to stable.)

If someone does want to request that the stable team pick it up for
4.19, then that's fine by me.

If we are going to the effort of backporting the rest of the series to
kernels such as 4.14, it is worth picking it up for those with the rest
of the patches as it avoids unintentionally always placing data in the
.rodata section that could otherwise be discarded under certain
configurations.

However, the saving from having it in the init sections is normally
minimal - in terms of the size of the kernel, the per-processor type
data structure is rather small.  We are talking around 256 bytes in
an ARMv7 kernel.

It only makes sense for kernels with big.Little disabled or the Spectre
workarounds disabled (since we need this data in the .rodata section for
big.Little kernels with Spectre workarounds enabled).  All other
configurations, this data can be located in the init sections.

The patch is more a correctness issue with the previous patch in terms
of the placement of the affected data.

I get the feeling that we're making something of a mountain out of a
molehill over this really trivial patch.

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 12.1Mbps down 622kbps up
According to speedtest.net: 11.9Mbps down 500kbps up



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux