On Wed, Sep 27, 2017 at 10:43:17AM +1000, Andrew Donnellan wrote: > From: Frederic Barrat <fbarrat@xxxxxxxxxxxxxxxxxx> > > commit 197267d0356004a31c4d6b6336598f5dff3301e1 upstream. > > cxl keeps a driver use count, which is used with the hash memory model > on p8 to know when to upgrade local TLBIs to global and to trigger > callbacks to manage the MMU for PSL8. > > If a process opens a context and closes without attaching or fails the > attachment, the driver use count is never decremented. As a > consequence, TLB invalidations remain global, even if there are no > active cxl contexts. > > We should increment the driver use count when the process is attaching > to the cxl adapter, and not on open. It's not needed before the > adapter starts using the context and the use count is decremented on > the detach path, so it makes more sense. > > It affects only the user api. The kernel api is already doing The > Right Thing. > > Signed-off-by: Frederic Barrat <fbarrat@xxxxxxxxxxxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx # v4.2+ > Fixes: 7bb5d91a4dda ("cxl: Rework context lifetimes") > Acked-by: Andrew Donnellan <andrew.donnellan@xxxxxxxxxxx> > Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx> > [ajd: backport to stable v4.4 tree] > Signed-off-by: Andrew Donnellan <andrew.donnellan@xxxxxxxxxxx> Thanks for this and the 4.9 backport. greg k-h