NACK: [Zesty][PATCH v2 09/11] locking/atomic, kref: Add kref_read()
joserz at linux.vnet.ibm.com
joserz at linux.vnet.ibm.com
Mon Aug 7 15:47:32 UTC 2017
On Fri, Aug 04, 2017 at 03:38:49PM +0200, Stefan Bader wrote:
> On 04.08.2017 15:15, joserz at linux.vnet.ibm.com wrote:
> > On Fri, Aug 04, 2017 at 09:58:14AM +0200, Stefan Bader wrote:
> >> On 27.07.2017 16:38, Stefan Bader wrote:
> >>> On 21.07.2017 17:50, Jose Ricardo Ziviani wrote:
> >>>> From: Peter Zijlstra <peterz at infradead.org>
> >>>>
> >>>> BugLink: http://bugs.launchpad.net/bugs/1686019
> >>>>
> >>>> Since we need to change the implementation, stop exposing internals.
> >>>>
> >>>> Provide kref_read() to read the current reference count; typically
> >>>> used for debug messages.
> >>>>
> >>>> Kills two anti-patterns:
> >>>>
> >>>> atomic_read(&kref->refcount)
> >>>> kref->refcount.counter
> >>>>
> >>>> Signed-off-by: Peter Zijlstra (Intel) <peterz at infradead.org>
> >>>> Cc: Andrew Morton <akpm at linux-foundation.org>
> >>>> Cc: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
> >>>> Cc: Linus Torvalds <torvalds at linux-foundation.org>
> >>>> Cc: Paul E. McKenney <paulmck at linux.vnet.ibm.com>
> >>>> Cc: Peter Zijlstra <peterz at infradead.org>
> >>>> Cc: Thomas Gleixner <tglx at linutronix.de>
> >>>> Cc: linux-kernel at vger.kernel.org
> >>>> Signed-off-by: Ingo Molnar <mingo at kernel.org>
> >>>> (cherry picked from commit 2c935bc57221cc2edc787c72ea0e2d30cdcd3d5e)
> >>>> Signed-off-by: Jose Ricardo Ziviani <joserz at linux.vnet.ibm.com>
> >>>> ---
> >>>> drivers/block/drbd/drbd_req.c | 2 +-
> >>>> drivers/block/rbd.c | 8 +++---
> >>>> drivers/block/virtio_blk.c | 2 +-
> >>>> drivers/gpu/drm/drm_gem_cma_helper.c | 2 +-
> >>>> drivers/gpu/drm/drm_info.c | 2 +-
> >>>> drivers/gpu/drm/drm_mode_object.c | 4 +--
> >>>> drivers/gpu/drm/etnaviv/etnaviv_gem.c | 2 +-
> >>>> drivers/gpu/drm/i915/i915_gem_object.h | 2 +-
> >>>> drivers/gpu/drm/msm/msm_gem.c | 2 +-
> >>>> drivers/gpu/drm/nouveau/nouveau_fence.c | 2 +-
> >>>> drivers/gpu/drm/omapdrm/omap_gem.c | 2 +-
> >>>> drivers/gpu/drm/ttm/ttm_bo.c | 4 +--
> >>>> drivers/gpu/drm/ttm/ttm_object.c | 2 +-
> >>>> drivers/infiniband/hw/cxgb3/iwch_cm.h | 6 ++---
> >>>> drivers/infiniband/hw/cxgb3/iwch_qp.c | 2 +-
> >>>> drivers/infiniband/hw/cxgb4/iw_cxgb4.h | 6 ++---
> >>>> drivers/infiniband/hw/cxgb4/qp.c | 2 +-
> >>>> drivers/infiniband/hw/usnic/usnic_ib_sysfs.c | 6 ++---
> >>>> drivers/infiniband/hw/usnic/usnic_ib_verbs.c | 4 +--
> >>>> drivers/misc/genwqe/card_dev.c | 2 +-
> >>>> drivers/misc/mei/debugfs.c | 2 +-
> >>>> drivers/pci/hotplug/pnv_php.c | 2 +-
> >>>> drivers/pci/slot.c | 2 +-
> >>>> drivers/scsi/bnx2fc/bnx2fc_io.c | 8 +++---
> >>>> drivers/scsi/cxgbi/libcxgbi.h | 4 +--
> >>>> drivers/scsi/lpfc/lpfc_debugfs.c | 2 +-
> >>>> drivers/scsi/lpfc/lpfc_els.c | 2 +-
> >>>> drivers/scsi/lpfc/lpfc_hbadisc.c | 40 ++++++++++++++--------------
> >>>> drivers/scsi/lpfc/lpfc_init.c | 3 +--
> >>>> drivers/scsi/qla2xxx/tcm_qla2xxx.c | 4 +--
> >>>> drivers/staging/android/ion/ion.c | 2 +-
> >>>> drivers/staging/comedi/comedi_buf.c | 2 +-
> >>>> drivers/target/target_core_pr.c | 10 +++----
> >>>> drivers/target/tcm_fc/tfc_sess.c | 2 +-
> >>>> drivers/usb/gadget/function/f_fs.c | 2 +-
> >>>> fs/exofs/sys.c | 2 +-
> >>>> fs/ocfs2/cluster/netdebug.c | 2 +-
> >>>> fs/ocfs2/cluster/tcp.c | 2 +-
> >>>> fs/ocfs2/dlm/dlmdebug.c | 12 ++++-----
> >>>> fs/ocfs2/dlm/dlmdomain.c | 2 +-
> >>>> fs/ocfs2/dlm/dlmmaster.c | 8 +++---
> >>>> fs/ocfs2/dlm/dlmunlock.c | 2 +-
> >>>> include/drm/drm_framebuffer.h | 2 +-
> >>>> include/drm/ttm/ttm_bo_driver.h | 4 +--
> >>>> include/linux/kref.h | 5 ++++
> >>>> include/linux/sunrpc/cache.h | 2 +-
> >>>> include/net/bluetooth/hci_core.h | 4 +--
> >>>> net/bluetooth/6lowpan.c | 2 +-
> >>>> net/bluetooth/a2mp.c | 4 +--
> >>>> net/bluetooth/amp.c | 4 +--
> >>>> net/bluetooth/l2cap_core.c | 4 +--
> >>>> net/ceph/messenger.c | 4 +--
> >>>> net/ceph/osd_client.c | 10 +++----
> >>>> net/sunrpc/cache.c | 2 +-
> >>>> net/sunrpc/svc_xprt.c | 6 ++---
> >>>> net/sunrpc/xprtrdma/svc_rdma_transport.c | 4 +--
> >>>> 56 files changed, 121 insertions(+), 117 deletions(-)
> >>>>
> >>>
> >>> For SRU I would rather prefer to see the ppc kvm patches to change kref_read
> >>> back into a atomic_read(kref instead of mucking around with half the kernel.
> >>> Even with that being the way forward...
> >>>
> >>
> >> To clearly state this, I don't think that this is acceptable for SRU in the
> >> current form.
> >>
> >> -Stefan
> >>
> >
> > Hi Stefan,
> >
> > Do you prefer a new patchset without this one? Actually, I included it
> > only to satisfy the dependency chain for patch 11 but I can create a new
> > set without this patch.
> >
> Yes, it looks to be much less intrusive to just change the kref_read in the
> backported code than to change all the other places.
>
> -Stefan
>
Hi Stefan,
Sorry, for the delay. I just sent the V4 without this referred commit. I
compiled and tested that successfully. But if you find anything else just
tell me and I'll fix it.
Thank you
More information about the kernel-team
mailing list