Hi Robert, Bill, Thanks for your reply.
2014-05-28 9:42 GMT+09:00 Robert Mustacchi <r...@joyent.com>: > A while back I was looking at a bug that doesn't seem dissimilar. What's > the size of the actual microcode itself? Sorry, how to calculate actual body size? File size is 1854360 bytes. > There's a size cap on the size of the body today, see > http://src.illumos.org/source/xref/illumos-gate/usr/src/uts/common/sys/ucode.h#209. > I suspect that if you increased that on a system then it would work, > note that you would need to rebuild the entire system with that. This is truss output before change the size cap. root@omnios:/tmp/microcode# root@omnios:/tmp/microcode# ucodeadm -u intel-ucode.txt ucodeadm: intel-ucode.txt: File header is invalid root@omnios:/tmp/microcode# root@omnios:/tmp/microcode# truss -fl ucodeadm -u intel-ucode.txt 13523/1: execve("/usr/sbin/ucodeadm", 0x08047DF0, 0x08047E00) argc = 3 <snip> 13523/1: read(3, " 0 2 6 0 3 6 ,\n 0 x b 5".., 4096) = 4096 13523/1: read(3, " 0 0 ,\t 0 x d 5 7 2 3 1".., 4096) = 2968 13523/1: read(3, 0x0822A2D4, 4096) = 0 13523/1: llseek(3, 0, SEEK_CUR) = 1854360 13523/1: close(3) = 0 13523/1: fstat64(2, 0x08046D30) = 0 ucodeadm13523/1: write(2, " u c o d e a d m", 8) = 8 : 13523/1: write(2, " : ", 2) = 2 intel-ucode.txt13523/1: write(2, " i n t e l - u c o d e .".., 15) = 15 : 13523/1: write(2, " : ", 2) = 2 File header is invalid13523/1: write(2, " F i l e h e a d e r ".., 22) = 22 13523/1: write(2, "\n", 1) = 1 13523/1: _exit(3) root@omnios:/tmp/microcode# I tried setting "UCODE_MAX_SIZE UCODE_KB(32)", "UCODE_MAX_COMBINED_SIZE UCODE_MB(32)", "modunload" ucode kernel module, "modload" new ucode kernel module. root@omnios:/tmp/microcode# root@omnios:/tmp/microcode# ./ucodeadm -u intel-ucode.txt ucodeadm: microcode update: File header is invalid root@omnios:/tmp/microcode# root@omnios:/tmp/microcode# truss -fl ./ucodeadm -u intel-ucode.txt 13538/1: execve("ucodeadm", 0x08047DF8, 0x08047E08) argc = 3 <snip> 13538/1: read(3, " 0 2 6 0 3 6 ,\n 0 x b 5".., 4096) = 4096 13538/1: read(3, " 0 0 ,\t 0 x d 5 7 2 3 1".., 4096) = 2968 13538/1: read(3, 0x0822A2D4, 4096) = 0 13538/1: llseek(3, 0, SEEK_CUR) = 1854360 13538/1: close(3) = 0 13538/1: open("/dev/ucode", O_RDONLY) = 3 13538/1: ioctl(3, (('u'<<24)|('c'<<16)|('o'<<8)|1), 0x08047D0C) = 0 13538/1: fstat64(2, 0x08046D30) = 0 ucodeadm13538/1: write(2, " u c o d e a d m", 8) = 8 : 13538/1: write(2, " : ", 2) = 2 microcode update13538/1: write(2, " m i c r o c o d e u p".., 16) = 16 : 13538/1: write(2, " : ", 2) = 2 File header is invalid13538/1: write(2, " F i l e h e a d e r ".., 22) = 22 13538/1: write(2, "\n", 1) = 1 13538/1: close(3) = 0 13538/1: _exit(3) root@omnios:/tmp/microcode# "microcode update" output from ucodeadm.c line 752? http://src.illumos.org/source/xref/illumos-gate/usr/src/cmd/ucodeadm/ucodeadm.c#752 rebuild the entire system is difficult now... Thanks ------------------------------------------- illumos-discuss Archives: https://www.listbox.com/member/archive/182180/=now RSS Feed: https://www.listbox.com/member/archive/rss/182180/21175430-2e6923be Modify Your Subscription: https://www.listbox.com/member/?member_id=21175430&id_secret=21175430-6a77cda4 Powered by Listbox: http://www.listbox.com