[gentoo-user] Re: gentoo-sources 5.15.151 breaks amdgpu support?
On 2024-03-11, Grant Edwards wrote: > I upgraded gentoo-sources from 5.15.147 to 5.15.151 this morning and > amdgpu support is now borked on my system with an AMD Ryzen 5 3400G > with Radeon Vega Graphics. > > Everything worked fine with 5.15.147, but when 5.15.151 (built with > same .config via "make oldconfig") boots there's always a kernel oops, > and video output goes blank. > > I suppose maybe it's time to see if 6.1 works... Gentoo-sources 6.1 seems to work fine. I had masked it when it first went stable because it wouldn't boot back then. Whatever was wrong with it then seems to have been fixed. Hopefully it won't catch whatever malady is affecting 5.15.151. -- Grant
[gentoo-user] gnucash will not generate a report
I tried to generate a report in GnuCash but I'm getting and empty page. Can anybody confirm! -- Thelma
Re: [gentoo-user] Emerge trouble with firefox and thunderbird ...
Il 10/03/24 23:44, Walter Dnes ha scritto: On Sun, Mar 10, 2024 at 08:43:46PM +0100, ralfconn wrote Given the warning message reported by Peter ("Enable USE=clang unless you have a very good reason not to.") That message comes from sys-libs/compiler-rt which is a dedicated runtime lib for clang. It makes sense to use clang if you're building the clang toolchain... just like using gcc if you're building the gcc toolchain. Correct, my mistake. My point was that it's worth filing a bug since it's possible that GCC support will be dropped upstream. But, the only 'news' I found on this regard [1] is quite old and it looks like GCC is still being supported. raf [1] https://blog.mozilla.org/nfroyd/2018/05/29/when-implementation-monoculture-right-thing/
[gentoo-user] gentoo-sources 5.15.151 breaks amdgpu support?
I upgraded gentoo-sources from 5.15.147 to 5.15.151 this morning and amdgpu support is now borked on my system with an AMD Ryzen 5 3400G with Radeon Vega Graphics. Everything worked fine with 5.15.147, but when 5.15.151 (built with same .config via "make oldconfig") boots there's always a kernel oops, and video output goes blank. I suppose maybe it's time to see if 6.1 works... [2.888353] [drm] amdgpu kernel modesetting enabled. [2.896597] amdgpu: Topology: Add APU node [0x0:0x0] [2.896736] [drm] initializing kernel modesetting (RAVEN 0x1002:0x15D8 0x1462:0x7C02 0xC8). [2.896742] amdgpu :2a:00.0: amdgpu: Trusted Memory Zone (TMZ) feature enabled [2.896751] [drm] register mmio base: 0xFCA0 [2.896752] [drm] register mmio size: 524288 [2.896762] [drm] add ip block number 0 [2.896764] [drm] add ip block number 1 [2.896766] [drm] add ip block number 2 [2.896767] [drm] add ip block number 3 [2.896769] [drm] add ip block number 4 [2.896770] [drm] add ip block number 5 [2.896772] [drm] add ip block number 6 [2.896774] [drm] add ip block number 7 [2.896775] [drm] add ip block number 8 [2.896779] Loading firmware: amdgpu/picasso_gpu_info.bin [2.919851] [drm] BIOS signature incorrect 5b 7 [2.919872] amdgpu :2a:00.0: amdgpu: Fetched VBIOS from ROM BAR [2.919874] amdgpu: ATOM BIOS: 113-PICASSO-115 [2.919883] Loading firmware: amdgpu/picasso_sdma.bin [2.920090] [drm] VCN decode is enabled in VM mode [2.920091] [drm] VCN encode is enabled in VM mode [2.920092] [drm] JPEG decode is enabled in VM mode [2.920111] amdgpu :2a:00.0: vgaarb: deactivate vga console [2.920841] Console: switching to colour dummy device 80x25 [2.920885] [drm] vm size is 262144 GB, 4 levels, block size is 9-bit, fragment size is 9-bit [2.920892] amdgpu :2a:00.0: amdgpu: VRAM: 2048M 0x00F4 - 0x00F47FFF (2048M used) [2.920895] amdgpu :2a:00.0: amdgpu: GART: 1024M 0x - 0x3FFF [2.920898] amdgpu :2a:00.0: amdgpu: AGP: 267419648M 0x00F8 - 0x [2.920904] [drm] Detected VRAM RAM=2048M, BAR=2048M [2.920906] [drm] RAM width 128bits DDR4 [2.921005] [drm] amdgpu: 2048M of VRAM memory ready [2.921008] [drm] amdgpu: 3072M of GTT memory ready. [2.921012] [drm] GART: num cpu pages 262144, num gpu pages 262144 [2.921136] [drm] PCIE GART of 1024M enabled. [2.921137] [drm] PTB located at 0x00F40090 [2.921208] Loading firmware: amdgpu/picasso_asd.bin [2.921688] Loading firmware: amdgpu/picasso_ta.bin [2.921897] amdgpu :2a:00.0: amdgpu: PSP runtime database doesn't exist [2.921939] Loading firmware: amdgpu/picasso_pfp.bin [2.922059] Loading firmware: amdgpu/picasso_me.bin [2.922246] Loading firmware: amdgpu/picasso_ce.bin [2.922344] Loading firmware: amdgpu/picasso_rlc_am4.bin [2.922846] Loading firmware: amdgpu/picasso_mec.bin [2.923079] Loading firmware: amdgpu/picasso_mec2.bin [2.924074] amdgpu: hwmgr_sw_init smu backed is smu10_smu [2.924081] Loading firmware: amdgpu/raven_dmcu.bin [2.924221] Loading firmware: amdgpu/picasso_vcn.bin [2.924504] [drm] Found VCN firmware Version ENC: 1.15 DEC: 3 VEP: 0 Revision: 0 [2.924510] amdgpu :2a:00.0: amdgpu: Will use PSP to load VCN firmware [2.945168] [drm] reserve 0x40 from 0xf47fc0 for PSP TMR [3.004533] amdgpu :2a:00.0: amdgpu: RAS: optional ras ta ucode is not available [3.009017] amdgpu :2a:00.0: amdgpu: RAP: optional rap ta ucode is not available [3.011810] [drm] psp gfx command LOAD_TA(0x1) failed and response status is (0x7) [3.011919] [drm] psp gfx command INVOKE_CMD(0x3) failed and response status is (0x4) [3.011922] amdgpu :2a:00.0: amdgpu: Secure display: Generic Failure. [3.011924] amdgpu :2a:00.0: amdgpu: SECUREDISPLAY: query securedisplay TA failed. ret 0x0 [3.013330] [drm] kiq ring mec 2 pipe 1 q 0 [3.014477] [drm] DM_PPLIB: values for F clock [3.014478] [drm] DM_PPLIB: 160 in kHz, 4399 in mV [3.014481] [drm] DM_PPLIB: values for DCF clock [3.014482] [drm] DM_PPLIB: 30 in kHz, 3099 in mV [3.014484] [drm] DM_PPLIB: 60 in kHz, 3574 in mV [3.014485] [drm] DM_PPLIB: 626000 in kHz, 4250 in mV [3.014487] [drm] DM_PPLIB: 654000 in kHz, 4399 in mV [3.014716] [drm] Display Core initialized with v3.2.149! [3.100173] [drm] VCN decode and encode initialized successfully(under SPG Mode). [3.101219] kfd kfd: amdgpu: Allocated 3969056 bytes on gart [3.101437] amdgpu: Topology: Add APU node [0x15d8:0x1002] [3.101440] kfd kfd: amdgpu: added device 1002:15d8 [3.101447] kfd kfd: amdgpu: Failed to resume IOMMU for device 1002:15d8 [3.101449] amdgpu :2a:00.0: amdgpu: amdgpu_device_ip_init failed [3.101452] amdgpu :2a:00.0: amdgpu: Fatal error during
Re: [gentoo-user] Soft scrolling on framebuffer consoles - with GPM handling - version of the patch for kernel 6.6 [was 6.3] onwards.
On Wednesday, 24 January 2024 12:20:29 GMT Alan Mackenzie wrote: > Hello, Gentoo. > > On Wed, Jan 24, 2024 at 10:00:37 +, Alan Mackenzie wrote: > > [ ] > > Please note the corrected subject line. This version of the soft > scrolling patch is for kernel 6.6.13, or thereabouts. It works well here, Alan, up to kernel version 6.7.9, but one of the 15 or so new kernel parameters (since 6.7.8) seems to cause it to fail. I've attached the reject file, /usr/src/linux-6.8.0-gentoo/drivers/tty/vt/ vt.c.rej. -- Regards, Peter. --- drivers/tty/vt/vt.c +++ drivers/tty/vt/vt.c @@ -348,107 +377,111 @@ void schedule_console_callback(void) * Code to manage unicode-based screen buffers */ -/* - * Our screen buffer is preceded by an array of line pointers so that - * scrolling only implies some pointer shuffling. - */ +#define vc_uniscr_buf_end(vc) (vc->vc_uniscr_buf + vc->vc_uniscr_char_size) -static u32 **vc_uniscr_alloc(unsigned int cols, unsigned int rows) +static int vc_uniscr_alloc(struct vc_data *vc, unsigned int cols, unsigned int rows) { - u32 **uni_lines; - void *p; - unsigned int memsize, i, col_size = cols * sizeof(**uni_lines); - - /* allocate everything in one go */ - memsize = col_size * rows; - memsize += rows * sizeof(*uni_lines); - uni_lines = vzalloc(memsize); - if (!uni_lines) - return NULL; - - /* initial line pointers */ - p = uni_lines + rows; - for (i = 0; i < rows; i++) { - uni_lines[i] = p; - p += col_size; - } + uint32_t *p; + unsigned int new_size; /* In 32-bit characters */ - return uni_lines; -} +#ifdef CONFIG_FRAMEBUFFER_CONSOLE_SOFT_SCROLLBACK_GPM + unsigned int num_scrollback_rows; -static void vc_uniscr_free(u32 **uni_lines) -{ - vfree(uni_lines); + num_scrollback_rows = (console_soft_scrollback_size / 2) / cols; + new_size = cols * (num_scrollback_rows + rows + 1); +#else + new_size = cols * (rows + 1); /* 1 row for the circular buffer admin */ +#endif + p = (uint32_t *)vzalloc (sizeof (uint32_t) * new_size); + if (!p) + return -ENOMEM; + vc->vc_uniscr_buf = p; + vc->vc_uniscr_curr = p; + vc->vc_uniscr_char_size = new_size; + memset32(p, ' ', new_size); /* Probably redundant. */ + return 0; } -static void vc_uniscr_set(struct vc_data *vc, u32 **new_uni_lines) +static void vc_uniscr_free(struct vc_data *vc) { - vc_uniscr_free(vc->vc_uni_lines); - vc->vc_uni_lines = new_uni_lines; + kvfree(vc->vc_uniscr_buf); + vc->vc_uniscr_buf = NULL; } static void vc_uniscr_putc(struct vc_data *vc, u32 uc) { - if (vc->vc_uni_lines) - vc->vc_uni_lines[vc->state.y][vc->state.x] = uc; + uint32_t *pos; + + if (vc->vc_uniscr_buf) { + pos = vc->vc_uniscr_curr; + UNISCR_PLUS(pos, vc->state.y * vc->vc_cols + vc->state.x); +#ifdef CONFIG_FRAMEBUFFER_CONSOLE_SOFT_SCROLLBACK_GPM + UNISCR_MINUS(pos, vc->vc_cols * (vc->vc_softback_lines + vc->vc_top)); +#endif + *pos = uc; + } } static void vc_uniscr_insert(struct vc_data *vc, unsigned int nr) { - if (vc->vc_uni_lines) { - u32 *ln = vc->vc_uni_lines[vc->state.y]; - unsigned int x = vc->state.x, cols = vc->vc_cols; + unsigned int x = vc->state.x, y = vc->state.y, cols = vc->vc_cols; + uint32_t *ln = vc->vc_uniscr_curr; - memmove([x + nr], [x], (cols - x - nr) * sizeof(*ln)); + if (vc->vc_uniscr_buf) { + UNISCR_PLUS(ln, y * cols); +#ifdef CONFIG_FRAMEBUFFER_CONSOLE_SOFT_SCROLLBACK_GPM + UNISCR_MINUS(ln, vc->vc_cols * (vc->vc_softback_lines + vc->vc_top)); +#endif + memmove([x + nr], [x], (cols - x - nr) * sizeof(uint32_t)); memset32([x], ' ', nr); } } static void vc_uniscr_delete(struct vc_data *vc, unsigned int nr) { - if (vc->vc_uni_lines) { - u32 *ln = vc->vc_uni_lines[vc->state.y]; - unsigned int x = vc->state.x, cols = vc->vc_cols; + unsigned int x = vc->state.x, y = vc->state.y, cols = vc->vc_cols; + uint32_t *ln = vc->vc_uniscr_curr; - memcpy([x], [x + nr], (cols - x - nr) * sizeof(*ln)); + if (vc->vc_uniscr_buf) { + UNISCR_PLUS(ln, y * cols); +#ifdef CONFIG_FRAMEBUFFER_CONSOLE_SOFT_SCROLLBACK_GPM + UNISCR_MINUS(ln, vc->vc_cols * (vc->vc_softback_lines + vc->vc_top)); +#endif + memcpy([x], [x + nr], (cols - x - nr) * sizeof(uint32_t)); memset32([cols - nr], ' ', nr); } } +/* FIXME!!! We need to check that NR never goes beyond the current line end. !!! */ static void vc_uniscr_clear_line(struct vc_data *vc, unsigned int x, unsigned int nr) { - if (vc->vc_uni_lines) - memset32(>vc_uni_lines[vc->state.y][x], ' ', nr); + if (vc->vc_uniscr_buf) { + uint32_t *ln = vc->vc_uniscr_curr; + + UNISCR_PLUS(ln, vc->state.y * vc->vc_cols); +#ifdef CONFIG_FRAMEBUFFER_CONSOLE_SOFT_SCROLLBACK_GPM + UNISCR_MINUS(ln, vc->vc_cols * (vc->vc_softback_lines + vc->vc_top)); +#endif + memset32([x], ' ', nr); + } } static void vc_uniscr_clear_lines(struct vc_data *vc, unsigned int y, unsigned int nr) { - if (vc->vc_uni_lines) - while (nr--) - memset32(vc->vc_uni_lines[y++], ' ', vc->vc_cols); -} - -/* juggling array rotation algorithm (complexity O(N), size complexity O(1))
Re: [gentoo-user] Re: Emerge trouble with firefox and thunderbird ...
On 10/03/2024 22:44, Carsten Hauck wrote: The CPU of the machine in question is in deed an old AMD. It's good to know the reason for that build-failures, thanks a lot. I certainly will stick to "-clang" in my package.use. Interesting. I'm not at all sure how old my CPU is, but at four cores it must be getting on a bit. Sounds like I should do the same ... Cheers, Wol
Re: [gentoo-user] Re: is a global use flag necessary for python?
Good tips, thank you. On 3/10/24 22:53, Walter Dnes wrote: On Sun, Mar 10, 2024 at 06:43:56PM -, Grant Edwards wrote Just back up your user data and re-install. Also back up /etc/ for your app configs and stuff like hosts and resolve.conf and make.ccnf and package.use and package.mask etc. And remember /var/lib/. /var/lib/portage/ has your sets including world. /var/lib/iptables and /var/lib/ip6tables have your firewall rules. The files from /etc/ and /var/lib/ should be checked before blindly dumping them into your new machine.