Merge tag 'driver-core-5.0-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git...
authorLinus Torvalds <torvalds@linux-foundation.org>
Fri, 8 Feb 2019 18:53:44 +0000 (10:53 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 8 Feb 2019 18:53:44 +0000 (10:53 -0800)
Pull driver core fixes from Greg KH:
 "Here are some driver core fixes for 5.0-rc6.

  Well, not so much "driver core" as "debugfs". There's a lot of
  outstanding debugfs cleanup patches coming in through different
  subsystem trees, and in that process the debugfs core was found that
  it really should return errors when something bad happens, to prevent
  random files from showing up in the root of debugfs afterward. So
  debugfs was fixed up to handle this properly, and then two fixes for
  the relay and blk-mq code was needed as it was making invalid
  assumptions about debugfs return values.

  There's also a cacheinfo fix in here that resolves a tiny issue.

  All of these have been in linux-next for over a week with no reported
  problems"

* tag 'driver-core-5.0-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
  blk-mq: protect debugfs_create_files() from failures
  relay: check return of create_buf_file() properly
  debugfs: debugfs_lookup() should return NULL if not found
  debugfs: return error values, not NULL
  debugfs: fix debugfs_rename parameter checking
  cacheinfo: Keep the old value if of_property_read_u32 fails

1  2 
block/blk-mq-debugfs.c

diff --combined block/blk-mq-debugfs.c
index f8120832ca7b8ea44cf872c3810dd373a662656b,777638f597aa66c6c54aa4d7915fec2eabb1167d..7921573aebbc28abd0a57a999792ede908acfd6c
@@@ -308,9 -308,8 +308,9 @@@ static const char *const cmd_flag_name[
        CMD_FLAG_NAME(PREFLUSH),
        CMD_FLAG_NAME(RAHEAD),
        CMD_FLAG_NAME(BACKGROUND),
 -      CMD_FLAG_NAME(NOUNMAP),
        CMD_FLAG_NAME(NOWAIT),
 +      CMD_FLAG_NAME(NOUNMAP),
 +      CMD_FLAG_NAME(HIPRI),
  };
  #undef CMD_FLAG_NAME
  
@@@ -839,6 -838,9 +839,9 @@@ static const struct blk_mq_debugfs_att
  static bool debugfs_create_files(struct dentry *parent, void *data,
                                 const struct blk_mq_debugfs_attr *attr)
  {
+       if (IS_ERR_OR_NULL(parent))
+               return false;
        d_inode(parent)->i_private = data;
  
        for (; attr->name; attr++) {