CC: [email protected] CC: [email protected] CC: [email protected] TO: John Ogness <[email protected]> CC: Sebastian Andrzej Siewior <[email protected]>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git linux-5.17.y-rt-rebase head: 1bb153b054c82122e2f215909ef08a48b82672cb commit: b7eb4b2778190ee0a85390b4f093bd51470a47ff [13/101] printk: add infrastucture for atomic consoles :::::: branch date: 4 days ago :::::: commit date: 4 days ago config: arm-randconfig-c002-20220130 (https://download.01.org/0day-ci/archive/20220204/[email protected]/config) compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project a73e4ce6a59b01f0e37037761c1e6889d539d233) 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 # install arm cross compiling tool for clang build # apt-get install binutils-arm-linux-gnueabi # https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git/commit/?id=b7eb4b2778190ee0a85390b4f093bd51470a47ff git remote add rt-devel https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git git fetch --no-tags rt-devel linux-5.17.y-rt-rebase git checkout b7eb4b2778190ee0a85390b4f093bd51470a47ff # save the config file to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm clang-analyzer If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <[email protected]> clang-analyzer warnings: (new ones prefixed by >>) drivers/video/backlight/qcom-wled.c:1126:3: note: Value stored to 'rc' is never read rc = regmap_update_bits(wled->regmap, addr, ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2 warnings generated. drivers/video/fbdev/core/fbmem.c:809:3: warning: Value stored to 'dst' is never read [clang-analyzer-deadcode.DeadStores] dst += c; ^ ~ drivers/video/fbdev/core/fbmem.c:809:3: note: Value stored to 'dst' is never read dst += c; ^ ~ drivers/video/fbdev/core/fbmem.c:887:3: warning: Value stored to 'src' is never read [clang-analyzer-deadcode.DeadStores] src += c; ^ ~ drivers/video/fbdev/core/fbmem.c:887:3: note: Value stored to 'src' is never read src += c; ^ ~ 1 warning generated. drivers/video/fbdev/core/fbmon.c:925:20: warning: Division by zero [clang-analyzer-core.DivideZero] var->pixclock = KHZ2PICOS(var->pixclock); ^ include/uapi/linux/fb.h:240:35: note: expanded from macro 'KHZ2PICOS' #define KHZ2PICOS(a) (1000000000UL/(a)) ~~~~~~~~~~~~^~~~ drivers/video/fbdev/core/fbmon.c:899:6: note: Assuming 'edid' is not equal to NULL if (edid == NULL || var == NULL) ^~~~~~~~~~~~ drivers/video/fbdev/core/fbmon.c:899:6: note: Left side of '||' is false drivers/video/fbdev/core/fbmon.c:899:22: note: Assuming 'var' is not equal to NULL if (edid == NULL || var == NULL) ^~~~~~~~~~~ drivers/video/fbdev/core/fbmon.c:899:2: note: Taking false branch if (edid == NULL || var == NULL) ^ drivers/video/fbdev/core/fbmon.c:902:6: note: Assuming the condition is false if (!(edid_checksum(edid))) ^~~~~~~~~~~~~~~~~~~~~~ drivers/video/fbdev/core/fbmon.c:902:2: note: Taking false branch if (!(edid_checksum(edid))) ^ drivers/video/fbdev/core/fbmon.c:905:6: note: Assuming the condition is false if (!(edid_check_header(edid))) ^~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/video/fbdev/core/fbmon.c:905:2: note: Taking false branch if (!(edid_check_header(edid))) ^ drivers/video/fbdev/core/fbmon.c:910:2: note: Loop condition is true. Entering loop body for (i = 0; i < 4; i++, block += DETAILED_TIMING_DESCRIPTION_SIZE) { ^ drivers/video/fbdev/core/fbmon.c:911:7: note: Calling 'edid_is_timing_block' if (edid_is_timing_block(block)) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/video/fbdev/core/fbmon.c:138:7: note: Assuming the condition is false if ((block[0] != 0x00) || (block[1] != 0x00) || ^~~~~~~~~~~~~~~~ drivers/video/fbdev/core/fbmon.c:138:6: note: Left side of '||' is false if ((block[0] != 0x00) || (block[1] != 0x00) || ^ drivers/video/fbdev/core/fbmon.c:138:29: note: Assuming the condition is false if ((block[0] != 0x00) || (block[1] != 0x00) || ^~~~~~~~~~~~~~~~ drivers/video/fbdev/core/fbmon.c:138:6: note: Left side of '||' is false if ((block[0] != 0x00) || (block[1] != 0x00) || ^ drivers/video/fbdev/core/fbmon.c:139:7: note: Assuming the condition is true (block[2] != 0x00) || (block[4] != 0x00)) ^~~~~~~~~~~~~~~~ drivers/video/fbdev/core/fbmon.c:139:25: note: Left side of '||' is true (block[2] != 0x00) || (block[4] != 0x00)) ^ drivers/video/fbdev/core/fbmon.c:140:3: note: Returning the value 1, which participates in a condition later return 1; ^~~~~~~~ drivers/video/fbdev/core/fbmon.c:911:7: note: Returning from 'edid_is_timing_block' if (edid_is_timing_block(block)) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/video/fbdev/core/fbmon.c:911:3: note: Taking true branch if (edid_is_timing_block(block)) { ^ drivers/video/fbdev/core/fbmon.c:924:4: note: The value 0 is assigned to field 'pixclock' var->pixclock /= 1000; ^~~~~~~~~~~~~~~~~~~~~ drivers/video/fbdev/core/fbmon.c:925:20: note: Division by zero var->pixclock = KHZ2PICOS(var->pixclock); ^ include/uapi/linux/fb.h:240:35: note: expanded from macro 'KHZ2PICOS' #define KHZ2PICOS(a) (1000000000UL/(a)) ~~~~~~~~~~~~^~~~ 3 warnings generated. kernel/printk/printk.c:157:3: warning: Call to function 'strcpy' is insecure as it does not provide bounding of the memory buffer. Replace unbounded copy functions with analogous functions that support length arguments such as 'strlcpy'. CWE-119 [clang-analyzer-security.insecureAPI.strcpy] strcpy(devkmsg_log_str, "on"); ^~~~~~ kernel/printk/printk.c:157:3: note: Call to function 'strcpy' is insecure as it does not provide bounding of the memory buffer. Replace unbounded copy functions with analogous functions that support length arguments such as 'strlcpy'. CWE-119 strcpy(devkmsg_log_str, "on"); ^~~~~~ kernel/printk/printk.c:159:3: warning: Call to function 'strcpy' is insecure as it does not provide bounding of the memory buffer. Replace unbounded copy functions with analogous functions that support length arguments such as 'strlcpy'. CWE-119 [clang-analyzer-security.insecureAPI.strcpy] strcpy(devkmsg_log_str, "off"); ^~~~~~ kernel/printk/printk.c:159:3: note: Call to function 'strcpy' is insecure as it does not provide bounding of the memory buffer. Replace unbounded copy functions with analogous functions that support length arguments such as 'strlcpy'. CWE-119 strcpy(devkmsg_log_str, "off"); ^~~~~~ >> kernel/printk/printk.c:2871:2: warning: Value stored to 'seq' is never read >> [clang-analyzer-deadcode.DeadStores] seq = read_console_seq(con); ^ ~~~~~~~~~~~~~~~~~~~~~ kernel/printk/printk.c:2871:2: note: Value stored to 'seq' is never read seq = read_console_seq(con); ^ ~~~~~~~~~~~~~~~~~~~~~ 1 warning generated. Suppressed 1 warnings (1 in non-user code). Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well. 2 warnings generated. drivers/video/fbdev/savage/savagefb_driver.c:949:3: warning: Value stored to 'memlen' is never read [clang-analyzer-deadcode.DeadStores] memlen = var->xres_virtual * var->bits_per_pixel * ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/video/fbdev/savage/savagefb_driver.c:949:3: note: Value stored to 'memlen' is never read memlen = var->xres_virtual * var->bits_per_pixel * ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/video/fbdev/savage/savagefb_driver.c:2192:2: warning: Value stored to 'err' is never read [clang-analyzer-deadcode.DeadStores] err = -ENOMEM; ^ ~~~~~~~ drivers/video/fbdev/savage/savagefb_driver.c:2192:2: note: Value stored to 'err' is never read err = -ENOMEM; ^ ~~~~~~~ 1 warning generated. drivers/video/fbdev/savage/savagefb-i2c.c:139:3: warning: Call to function 'strcpy' is insecure as it does not provide bounding of the memory buffer. Replace unbounded copy functions with analogous functions that support length arguments such as 'strlcpy'. CWE-119 [clang-analyzer-security.insecureAPI.strcpy] strcpy(chan->adapter.name, name); ^~~~~~ drivers/video/fbdev/savage/savagefb-i2c.c:139:3: note: Call to function 'strcpy' is insecure as it does not provide bounding of the memory buffer. Replace unbounded copy functions with analogous functions that support length arguments such as 'strlcpy'. CWE-119 strcpy(chan->adapter.name, name); ^~~~~~ 4 warnings generated. fs/reiserfs/inode.c:1140:3: warning: Value stored to 'bh' is never read [clang-analyzer-deadcode.DeadStores] bh = get_last_bh(&path); ^ fs/reiserfs/inode.c:1140:3: note: Value stored to 'bh' is never read fs/reiserfs/inode.c:1142:3: warning: Value stored to 'item' is never read [clang-analyzer-deadcode.DeadStores] item = tp_item_body(&path); ^ ~~~~~~~~~~~~~~~~~~~ fs/reiserfs/inode.c:1142:3: note: Value stored to 'item' is never read item = tp_item_body(&path); ^ ~~~~~~~~~~~~~~~~~~~ fs/reiserfs/inode.c:3197:3: warning: Value stored to 'ret' is never read [clang-analyzer-deadcode.DeadStores] ret = try_to_release_page(page, 0); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ fs/reiserfs/inode.c:3197:3: note: Value stored to 'ret' is never read ret = try_to_release_page(page, 0); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ fs/reiserfs/reiserfs.h:1280:17: warning: The left operand of '&' is a garbage value [clang-analyzer-core.UndefinedBinaryOperatorResult] v2->v = (v2->v & cpu_to_le64(15ULL << 60)) | cpu_to_le64(offset); ^ fs/reiserfs/inode.c:1938:9: note: Assuming field 't_trans_id' is not equal to 0 BUG_ON(!th->t_trans_id); ^ include/asm-generic/bug.h:65:45: note: expanded from macro 'BUG_ON' #define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } while (0) ^~~~~~~~~ include/linux/compiler.h:78:42: note: expanded from macro 'unlikely' # define unlikely(x) __builtin_expect(!!(x), 0) ^ fs/reiserfs/inode.c:1938:2: note: Taking false branch BUG_ON(!th->t_trans_id); ^ include/asm-generic/bug.h:65:32: note: expanded from macro 'BUG_ON' #define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } while (0) ^ fs/reiserfs/inode.c:1938:2: note: Loop condition is false. Exiting loop BUG_ON(!th->t_trans_id); ^ include/asm-generic/bug.h:65:27: note: expanded from macro 'BUG_ON' #define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } while (0) ^ fs/reiserfs/inode.c:1943:6: note: Assuming 'err' is 0 if (err) ^~~ fs/reiserfs/inode.c:1943:2: note: Taking false branch if (err) ^ fs/reiserfs/inode.c:1945:6: note: Assuming field 'i_nlink' is not equal to 0 if (!dir->i_nlink) { ^~~~~~~~~~~~~ fs/reiserfs/inode.c:1945:2: note: Taking false branch if (!dir->i_nlink) { ^ fs/reiserfs/inode.c:1953:6: note: Assuming field 'k_objectid' is not equal to 0 if (!ih.ih_key.k_objectid) { ^~~~~~~~~~~~~~~~~~~~~ fs/reiserfs/inode.c:1953:2: note: Taking false branch if (!ih.ih_key.k_objectid) { ^ fs/reiserfs/inode.c:1958:6: note: Assuming the condition is false if (old_format_only(sb)) ^ fs/reiserfs/reiserfs.h:728:29: note: expanded from macro 'old_format_only' #define old_format_only(s) (REISERFS_SB(s)->s_properties & (1 << REISERFS_3_5)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ fs/reiserfs/inode.c:1958:2: note: Taking false branch if (old_format_only(sb)) ^ fs/reiserfs/inode.c:1962:3: note: Calling 'make_le_item_head' make_le_item_head(&ih, NULL, KEY_FORMAT_3_6, SD_OFFSET, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ fs/reiserfs/inode.c:142:6: note: 'key' is null vim +/seq +2871 kernel/printk/printk.c b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 2829 ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2830 /* ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2831 * Print one record for the given console. The record printed is whatever ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2832 * record is the next available record for the given console. ^1da177e4c3f41 kernel/printk.c Linus Torvalds 2005-04-16 2833 * 51794a0d5ef26a kernel/printk/printk.c John Ogness 2021-11-22 2834 * @text is a buffer of size CONSOLE_LOG_MAX. 51794a0d5ef26a kernel/printk/printk.c John Ogness 2021-11-22 2835 * 51794a0d5ef26a kernel/printk/printk.c John Ogness 2021-11-22 2836 * If extended messages should be printed, @ext_text is a buffer of size 51794a0d5ef26a kernel/printk/printk.c John Ogness 2021-11-22 2837 * CONSOLE_EXT_LOG_MAX. Otherwise @ext_text must be NULL. 51794a0d5ef26a kernel/printk/printk.c John Ogness 2021-11-22 2838 * 51794a0d5ef26a kernel/printk/printk.c John Ogness 2021-11-22 2839 * If dropped messages should be printed, @dropped_text is a buffer of size 51794a0d5ef26a kernel/printk/printk.c John Ogness 2021-11-22 2840 * DROPPED_TEXT_MAX. Otherise @dropped_text must be NULL. 51794a0d5ef26a kernel/printk/printk.c John Ogness 2021-11-22 2841 * b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 2842 * @atomic_printing specifies if atomic printing should be used. b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 2843 * ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2844 * Requires the console_lock. ^1da177e4c3f41 kernel/printk.c Linus Torvalds 2005-04-16 2845 * ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2846 * Returns false if the given console has no next record to print, otherwise ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2847 * true. ^1da177e4c3f41 kernel/printk.c Linus Torvalds 2005-04-16 2848 * ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2849 * @handover will be set to true if a printk waiter has taken over the ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2850 * console_lock, in which case the caller is no longer holding the f0aa6fbf636e19 kernel/printk/printk.c John Ogness 2021-12-13 2851 * console_lock. Otherwise it is set to false. A NULL pointer may be provided f0aa6fbf636e19 kernel/printk/printk.c John Ogness 2021-12-13 2852 * to disable allowing the console_lock to be taken over by a printk waiter. ^1da177e4c3f41 kernel/printk.c Linus Torvalds 2005-04-16 2853 */ 51794a0d5ef26a kernel/printk/printk.c John Ogness 2021-11-22 2854 static bool console_emit_next_record(struct console *con, char *text, char *ext_text, b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 2855 char *dropped_text, bool atomic_printing, b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 2856 bool *handover) ^1da177e4c3f41 kernel/printk.c Linus Torvalds 2005-04-16 2857 { 896fbe20b4e233 kernel/printk/printk.c John Ogness 2020-07-09 2858 struct printk_info info; 896fbe20b4e233 kernel/printk/printk.c John Ogness 2020-07-09 2859 struct printk_record r; ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2860 unsigned long flags; f0aa6fbf636e19 kernel/printk/printk.c John Ogness 2021-12-13 2861 bool allow_handover; ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2862 char *write_text; ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2863 size_t len; b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 2864 u64 seq; 78944e549d3667 kernel/printk.c Antonino A. Daplas 2006-08-05 2865 51794a0d5ef26a kernel/printk/printk.c John Ogness 2021-11-22 2866 prb_rec_init_rd(&r, &info, text, CONSOLE_LOG_MAX); 896fbe20b4e233 kernel/printk/printk.c John Ogness 2020-07-09 2867 f0aa6fbf636e19 kernel/printk/printk.c John Ogness 2021-12-13 2868 if (handover) ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2869 *handover = false; 7ff9554bb578ba kernel/printk.c Kay Sievers 2012-05-03 2870 b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 @2871 seq = read_console_seq(con); b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 2872 b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 2873 if (!prb_read_valid(prb, seq, &r)) ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2874 return false; 7ff9554bb578ba kernel/printk.c Kay Sievers 2012-05-03 2875 b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 2876 if (seq != r.info->seq) { b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 2877 atomic_long_add((unsigned long)(r.info->seq - seq), &con->dropped); b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 2878 write_console_seq(con, r.info->seq, atomic_printing); b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 2879 seq = r.info->seq; 896fbe20b4e233 kernel/printk/printk.c John Ogness 2020-07-09 2880 } 896fbe20b4e233 kernel/printk/printk.c John Ogness 2020-07-09 2881 ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2882 /* Skip record that has level above the console loglevel. */ 896fbe20b4e233 kernel/printk/printk.c John Ogness 2020-07-09 2883 if (suppress_message_printing(r.info->level)) { b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 2884 write_console_seq(con, seq + 1, atomic_printing); 084681d14e429c kernel/printk.c Kay Sievers 2012-06-28 2885 goto skip; 084681d14e429c kernel/printk.c Kay Sievers 2012-06-28 2886 } 649e6ee33f73ba kernel/printk.c Kay Sievers 2012-05-10 2887 51794a0d5ef26a kernel/printk/printk.c John Ogness 2021-11-22 2888 if (ext_text) { 51794a0d5ef26a kernel/printk/printk.c John Ogness 2021-11-22 2889 write_text = ext_text; 51794a0d5ef26a kernel/printk/printk.c John Ogness 2021-11-22 2890 len = info_print_ext_header(ext_text, CONSOLE_EXT_LOG_MAX, r.info); 51794a0d5ef26a kernel/printk/printk.c John Ogness 2021-11-22 2891 len += msg_print_ext_body(ext_text + len, CONSOLE_EXT_LOG_MAX - len, ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2892 &r.text_buf[0], r.info->text_len, &r.info->dev_info); ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2893 } else { 51794a0d5ef26a kernel/printk/printk.c John Ogness 2021-11-22 2894 write_text = text; ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2895 len = record_print_text(&r, console_msg_format & MSG_FORMAT_SYSLOG, printk_time); 6fe29354befe4c kernel/printk/printk.c Tejun Heo 2015-06-25 2896 } 7ff9554bb578ba kernel/printk.c Kay Sievers 2012-05-03 2897 f0aa6fbf636e19 kernel/printk/printk.c John Ogness 2021-12-13 2898 /* Handovers may only happen between trylock contexts. */ f0aa6fbf636e19 kernel/printk/printk.c John Ogness 2021-12-13 2899 allow_handover = (handover && atomic_read(&console_lock_count) == -1); f0aa6fbf636e19 kernel/printk/printk.c John Ogness 2021-12-13 2900 f0aa6fbf636e19 kernel/printk/printk.c John Ogness 2021-12-13 2901 if (allow_handover) { dbdda842fe96f8 kernel/printk/printk.c Steven Rostedt (VMware 2018-01-10 2902) /* dbdda842fe96f8 kernel/printk/printk.c Steven Rostedt (VMware 2018-01-10 2903) * While actively printing out messages, if another printk() dbdda842fe96f8 kernel/printk/printk.c Steven Rostedt (VMware 2018-01-10 2904) * were to occur on another CPU, it may wait for this one to dbdda842fe96f8 kernel/printk/printk.c Steven Rostedt (VMware 2018-01-10 2905) * finish. This task can not be preempted if there is a dbdda842fe96f8 kernel/printk/printk.c Steven Rostedt (VMware 2018-01-10 2906) * waiter waiting to take over. 93d102f094be9b kernel/printk/printk.c John Ogness 2021-07-15 2907 * 93d102f094be9b kernel/printk/printk.c John Ogness 2021-07-15 2908 * Interrupts are disabled because the hand over to a waiter 93d102f094be9b kernel/printk/printk.c John Ogness 2021-07-15 2909 * must not be interrupted until the hand over is completed 93d102f094be9b kernel/printk/printk.c John Ogness 2021-07-15 2910 * (@console_waiter is cleared). dbdda842fe96f8 kernel/printk/printk.c Steven Rostedt (VMware 2018-01-10 2911) */ 93d102f094be9b kernel/printk/printk.c John Ogness 2021-07-15 2912 printk_safe_enter_irqsave(flags); c162d5b4338d72 kernel/printk/printk.c Petr Mladek 2018-01-12 2913 console_lock_spinning_enable(); f0aa6fbf636e19 kernel/printk/printk.c John Ogness 2021-12-13 2914 } dbdda842fe96f8 kernel/printk/printk.c Steven Rostedt (VMware 2018-01-10 2915) 81d68a96a39844 kernel/printk.c Steven Rostedt 2008-05-12 2916 stop_critical_timings(); /* don't trace print latency */ b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 2917 call_console_driver(con, write_text, len, dropped_text, atomic_printing); 81d68a96a39844 kernel/printk.c Steven Rostedt 2008-05-12 2918 start_critical_timings(); dbdda842fe96f8 kernel/printk/printk.c Steven Rostedt (VMware 2018-01-10 2919) b7eb4b2778190e kernel/printk/printk.c John Ogness 2021-12-22 2920 write_console_seq(con, seq + 1, atomic_printing); ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2921 f0aa6fbf636e19 kernel/printk/printk.c John Ogness 2021-12-13 2922 if (allow_handover) { ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2923 *handover = console_lock_spinning_disable_and_check(); c162d5b4338d72 kernel/printk/printk.c Petr Mladek 2018-01-12 2924 printk_safe_exit_irqrestore(flags); f0aa6fbf636e19 kernel/printk/printk.c John Ogness 2021-12-13 2925 } ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2926 ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2927 printk_delay(r.info->level); ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2928 skip: ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2929 return true; ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2930 } ca31ea1ffed3ab kernel/printk/printk.c John Ogness 2021-08-10 2931 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/[email protected] _______________________________________________ kbuild mailing list -- [email protected] To unsubscribe send an email to [email protected]
