oe-kbuild-all.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [dhowells-fs:pipe-list 37/39] include/linux/wait.h:129: undefined reference to `sock_from_file'
@ 2023-03-14 21:01 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2023-03-14 21:01 UTC (permalink / raw)
  To: David Howells; +Cc: oe-kbuild-all

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git pipe-list
head:   04b41c19739aec7e0cae6cba28b4e317d703a614
commit: 7cc1f70554018f6b92c0f424855474939d0882ce [37/39] pipe, splice: Make splice use the new pipe helpers
config: xtensa-randconfig-r002-20230312 (https://download.01.org/0day-ci/archive/20230315/202303150438.A7QwwhSz-lkp@intel.com/config)
compiler: xtensa-linux-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/commit/?id=7cc1f70554018f6b92c0f424855474939d0882ce
        git remote add dhowells-fs https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git
        git fetch --no-tags dhowells-fs pipe-list
        git checkout 7cc1f70554018f6b92c0f424855474939d0882ce
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=xtensa olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=xtensa SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202303150438.A7QwwhSz-lkp@intel.com/

All errors (new ones prefixed by >>):

   xtensa-linux-ld: fs/splice.o: in function `wakeup_pipe_writers':
   fs/splice.c:435: undefined reference to `sock_from_file'
   xtensa-linux-ld: fs/splice.c:166: undefined reference to `sock_sendmsg'
   xtensa-linux-ld: fs/splice.o: in function `waitqueue_active':
>> include/linux/wait.h:129: undefined reference to `sock_from_file'
   xtensa-linux-ld: fs/splice.o: in function `pipe_to_sendmsg':
   fs/splice.c:413: undefined reference to `sock_sendmsg'


vim +129 include/linux/wait.h

^1da177e4c3f41 Linus Torvalds   2005-04-16   96  
69e51e92a39408 Peter Zijlstra   2015-10-23   97  /**
69e51e92a39408 Peter Zijlstra   2015-10-23   98   * waitqueue_active -- locklessly test for waiters on the queue
9d9d676f595b50 Ingo Molnar      2017-03-05   99   * @wq_head: the waitqueue to test for waiters
69e51e92a39408 Peter Zijlstra   2015-10-23  100   *
69e51e92a39408 Peter Zijlstra   2015-10-23  101   * returns true if the wait list is not empty
69e51e92a39408 Peter Zijlstra   2015-10-23  102   *
69e51e92a39408 Peter Zijlstra   2015-10-23  103   * NOTE: this function is lockless and requires care, incorrect usage _will_
69e51e92a39408 Peter Zijlstra   2015-10-23  104   * lead to sporadic and non-obvious failure.
69e51e92a39408 Peter Zijlstra   2015-10-23  105   *
9d9d676f595b50 Ingo Molnar      2017-03-05  106   * Use either while holding wait_queue_head::lock or when used for wakeups
8c1007fdc71fdf Tobin C. Harding 2019-04-09  107   * with an extra smp_mb() like::
69e51e92a39408 Peter Zijlstra   2015-10-23  108   *
69e51e92a39408 Peter Zijlstra   2015-10-23  109   *      CPU0 - waker                    CPU1 - waiter
69e51e92a39408 Peter Zijlstra   2015-10-23  110   *
69e51e92a39408 Peter Zijlstra   2015-10-23  111   *                                      for (;;) {
4b1c480bfa3b24 Ingo Molnar      2017-03-05  112   *      @cond = true;                     prepare_to_wait(&wq_head, &wait, state);
69e51e92a39408 Peter Zijlstra   2015-10-23  113   *      smp_mb();                         // smp_mb() from set_current_state()
4b1c480bfa3b24 Ingo Molnar      2017-03-05  114   *      if (waitqueue_active(wq_head))         if (@cond)
4b1c480bfa3b24 Ingo Molnar      2017-03-05  115   *        wake_up(wq_head);                      break;
69e51e92a39408 Peter Zijlstra   2015-10-23  116   *                                        schedule();
69e51e92a39408 Peter Zijlstra   2015-10-23  117   *                                      }
4b1c480bfa3b24 Ingo Molnar      2017-03-05  118   *                                      finish_wait(&wq_head, &wait);
69e51e92a39408 Peter Zijlstra   2015-10-23  119   *
69e51e92a39408 Peter Zijlstra   2015-10-23  120   * Because without the explicit smp_mb() it's possible for the
69e51e92a39408 Peter Zijlstra   2015-10-23  121   * waitqueue_active() load to get hoisted over the @cond store such that we'll
69e51e92a39408 Peter Zijlstra   2015-10-23  122   * observe an empty wait list while the waiter might not observe @cond.
69e51e92a39408 Peter Zijlstra   2015-10-23  123   *
69e51e92a39408 Peter Zijlstra   2015-10-23  124   * Also note that this 'optimization' trades a spin_lock() for an smp_mb(),
69e51e92a39408 Peter Zijlstra   2015-10-23  125   * which (when the lock is uncontended) are of roughly equal cost.
69e51e92a39408 Peter Zijlstra   2015-10-23  126   */
9d9d676f595b50 Ingo Molnar      2017-03-05  127  static inline int waitqueue_active(struct wait_queue_head *wq_head)
^1da177e4c3f41 Linus Torvalds   2005-04-16  128  {
2055da97389a60 Ingo Molnar      2017-06-20 @129  	return !list_empty(&wq_head->head);
^1da177e4c3f41 Linus Torvalds   2005-04-16  130  }
^1da177e4c3f41 Linus Torvalds   2005-04-16  131  

:::::: The code at line 129 was first introduced by commit
:::::: 2055da97389a605c8a00d163d40903afbe413921 sched/wait: Disambiguate wq_entry->task_list and wq_head->task_list naming

:::::: TO: Ingo Molnar <mingo@kernel.org>
:::::: CC: Ingo Molnar <mingo@kernel.org>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-03-14 21:01 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-14 21:01 [dhowells-fs:pipe-list 37/39] include/linux/wait.h:129: undefined reference to `sock_from_file' kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).