fix(color): log the surface identity and the 3D LUT actually used
- commit
- 40705c4713c353135f4d506119b740e00199d261
- author
- brice · · 2026-10-23 05:36 UTC
- parent
- 1ec6f71
- signature
- GPG Verified
CD88F9E564E0102646FB6077A1A07C7C7C3E349D· arch-gpg Verified for the committer email
2 files · +3 -3
M internal/adapters/drm/scanout.go +1 -1
| @@ -269,7 +269,7 @@ func (o *Output) scanoutFrame(scene ports.Scene, surfaces map[ports.WindowID]por | |||
| 269 | 269 | // Entering scanout: how the buffer will be shown on the plane. | |
| 270 | 270 | o.renderLog.Info().Str("connector", o.conn.name).Uint32("format", c.DMABuf.Format).Uint64("modifier", c.DMABuf.Modifier). | |
| 271 | 271 | Bool("opaque", c.Opaque).Uint8("tf", c.Color.TF).Uint8("primaries", c.Color.Primaries). | |
| 272 | - | Bool("hdr_on", o.hdr.on).Bool("pipeline_matched", o.primary.pipeline != nil).Bool("sdr_to_pq", mode == colorSDRToPQ).Bool("lut3d_identity", o.lut3dBlob != 0). | |
| 272 | + | Bool("hdr_on", o.hdr.on).Bool("pipeline_matched", o.primary.pipeline != nil).Bool("sdr_to_pq", mode == colorSDRToPQ).Bool("lut3d_identity", mode == colorSDRToPQ && o.lut3dBlob != 0 && o.primary.pipeline != nil && o.primary.pipeline.lut3d.op != 0). | |
| 273 | 273 | Msg("scanout colour") | |
| 274 | 274 | } | |
| 275 | 275 | o.setScanoutReason(reason) | |
| @@ -269,7 +269,7 @@ func (o *Output) scanoutFrame(scene ports.Scene, surfaces map[ports.WindowID]por | |||||
| 269 | // Entering scanout: how the buffer will be shown on the plane. | 269 | // Entering scanout: how the buffer will be shown on the plane. | ||
| 270 | o.renderLog.Info().Str("connector", o.conn.name).Uint32("format", c.DMABuf.Format).Uint64("modifier", c.DMABuf.Modifier). | 270 | o.renderLog.Info().Str("connector", o.conn.name).Uint32("format", c.DMABuf.Format).Uint64("modifier", c.DMABuf.Modifier). | ||
| 271 | Bool("opaque", c.Opaque).Uint8("tf", c.Color.TF).Uint8("primaries", c.Color.Primaries). | 271 | Bool("opaque", c.Opaque).Uint8("tf", c.Color.TF).Uint8("primaries", c.Color.Primaries). | ||
| 272 | - | Bool("hdr_on", o.hdr.on).Bool("pipeline_matched", o.primary.pipeline != nil).Bool("sdr_to_pq", mode == colorSDRToPQ).Bool("lut3d_identity", o.lut3dBlob != 0). | 272 | + | Bool("hdr_on", o.hdr.on).Bool("pipeline_matched", o.primary.pipeline != nil).Bool("sdr_to_pq", mode == colorSDRToPQ).Bool("lut3d_identity", mode == colorSDRToPQ && o.lut3dBlob != 0 && o.primary.pipeline != nil && o.primary.pipeline.lut3d.op != 0). |
| 273 | Msg("scanout colour") | 273 | Msg("scanout colour") | ||
| 274 | } | 274 | } | ||
| 275 | o.setScanoutReason(reason) | 275 | o.setScanoutReason(reason) | ||
M internal/adapters/wayland/colormanagement.go +2 -2
| @@ -196,7 +196,7 @@ func (h *colorSurface) SetImageDescription(r *cm.WpColorManagementSurfaceV1, des | |||
| 196 | 196 | return | |
| 197 | 197 | } | |
| 198 | 198 | h.surf.next.color = d.SurfaceColor | |
| 199 | - | h.surf.server.log.Info().Uint64("id", uint64(h.surf.windowID())).Uint32("tf", d.TF).Uint32("primaries", d.Primaries). | |
| 199 | + | h.surf.server.log.Info().Uint64("surface", h.surf.identity).Uint64("id", uint64(h.surf.windowID())).Uint32("tf", d.TF).Uint32("primaries", d.Primaries). | |
| 200 | 200 | Uint32("max_cll", d.MaxCLL).Uint32("max_fall", d.MaxFALL).Uint32("intent", intent).Msg("surface color description set") | |
| 201 | 201 | } | |
| 202 | 202 | func (h *colorSurface) UnsetImageDescription(r *cm.WpColorManagementSurfaceV1) { | |
| @@ -205,7 +205,7 @@ func (h *colorSurface) UnsetImageDescription(r *cm.WpColorManagementSurfaceV1) { | |||
| 205 | 205 | return | |
| 206 | 206 | } | |
| 207 | 207 | h.surf.next.color = SurfaceColor{} | |
| 208 | - | h.surf.server.log.Info().Uint64("id", uint64(h.surf.windowID())).Msg("surface color description unset") | |
| 208 | + | h.surf.server.log.Info().Uint64("surface", h.surf.identity).Uint64("id", uint64(h.surf.windowID())).Msg("surface color description unset") | |
| 209 | 209 | } | |
| 210 | 210 | ||
| 211 | 211 | type colorFeedback struct { | |
| @@ -196,7 +196,7 @@ func (h *colorSurface) SetImageDescription(r *cm.WpColorManagementSurfaceV1, des | |||||
| 196 | return | 196 | return | ||
| 197 | } | 197 | } | ||
| 198 | h.surf.next.color = d.SurfaceColor | 198 | h.surf.next.color = d.SurfaceColor | ||
| 199 | - | h.surf.server.log.Info().Uint64("id", uint64(h.surf.windowID())).Uint32("tf", d.TF).Uint32("primaries", d.Primaries). | 199 | + | h.surf.server.log.Info().Uint64("surface", h.surf.identity).Uint64("id", uint64(h.surf.windowID())).Uint32("tf", d.TF).Uint32("primaries", d.Primaries). |
| 200 | Uint32("max_cll", d.MaxCLL).Uint32("max_fall", d.MaxFALL).Uint32("intent", intent).Msg("surface color description set") | 200 | Uint32("max_cll", d.MaxCLL).Uint32("max_fall", d.MaxFALL).Uint32("intent", intent).Msg("surface color description set") | ||
| 201 | } | 201 | } | ||
| 202 | func (h *colorSurface) UnsetImageDescription(r *cm.WpColorManagementSurfaceV1) { | 202 | func (h *colorSurface) UnsetImageDescription(r *cm.WpColorManagementSurfaceV1) { | ||
| @@ -205,7 +205,7 @@ func (h *colorSurface) UnsetImageDescription(r *cm.WpColorManagementSurfaceV1) { | |||||
| 205 | return | 205 | return | ||
| 206 | } | 206 | } | ||
| 207 | h.surf.next.color = SurfaceColor{} | 207 | h.surf.next.color = SurfaceColor{} | ||
| 208 | - | h.surf.server.log.Info().Uint64("id", uint64(h.surf.windowID())).Msg("surface color description unset") | 208 | + | h.surf.server.log.Info().Uint64("surface", h.surf.identity).Uint64("id", uint64(h.surf.windowID())).Msg("surface color description unset") |
| 209 | } | 209 | } | ||
| 210 | 210 | ||||
| 211 | type colorFeedback struct { | 211 | type colorFeedback struct { | ||