LinuxQuestions.org
Review your favorite Linux distribution.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 06-01-2022, 11:08 AM   #16
enorbet
Senior Member
 
Registered: Jun 2003
Location: Virginia
Distribution: Slackware = Main OpSys
Posts: 4,784

Rep: Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435

karthik_holla, it is probably wise to insure the intel module is loading with "lsmod | grep foo" and then including that Intel driver in xorg.conf. Also you can always temporarily use

Code:
Section "Device"
    Identifier  "VESA Framebuffer"
    Driver      "vesa"
    #VideoRam    4096
    # Insert Clocks lines here if appropriate
EndSection
as a backup, always working (just no acceleration), X11, if you prefer editing from X..
 
Old 06-02-2022, 04:23 PM   #17
henca
Member
 
Registered: Aug 2007
Location: Linköping, Sweden
Distribution: Slackware
Posts: 976

Rep: Reputation: 664Reputation: 664Reputation: 664Reputation: 664Reputation: 664Reputation: 664
Quote:
Originally Posted by karthik_holla View Post
startx does only give me a blank for the first time.I have to press ctrl+alt+backspace and retype startx again to load the GUI properly.
At least it is good that you have an error that you can repeat and even better that you can repeat success. If you are lucky, some log entry will explain what goes wrong when it fails.

You probably have two log files that could be interesting to study:

/var/log/Xorg.0.log
and
/var/log/Xorg.0.log.old

Are you able to find any interesting relevant difference between those two files when you successfully have started X and the previous attempt failed?

regards Henrik
 
Old 06-04-2022, 02:31 AM   #18
karthik_holla
Member
 
Registered: Jul 2016
Location: India
Distribution: slackware-15.0
Posts: 73

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by enorbet View Post
karthik_holla, it is probably wise to insure the intel module is loading with "lsmod | grep foo" and then including that Intel driver in xorg.conf. Also you can always temporarily use

Code:
Section "Device"
    Identifier  "VESA Framebuffer"
    Driver      "vesa"
    #VideoRam    4096
    # Insert Clocks lines here if appropriate
EndSection
as a backup, always working (just no acceleration), X11, if you prefer editing from X..
Tried adding these lines to /etc/X11/xorg.conf
Code:
Section "Device"
        Identifier "Intel Corporation HD Graphics 5500"
        Driver "intel"
        EndSection
But it doesn't change much except for a cursor and falls back giving an error

Last edited by karthik_holla; 06-04-2022 at 02:34 AM.
 
Old 06-04-2022, 03:09 AM   #19
LuckyCyborg
Senior Member
 
Registered: Mar 2010
Posts: 3,516

Rep: Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338
Quote:
Originally Posted by karthik_holla View Post
But it doesn't change much except for a cursor and falls back giving an error
Man, I asked you literally to show us the dmesg and Xorg logs. You did NOT.

So, you want to solve your problem or to waste our time?

If you want us to help you to solve your problem, you should post those logs i asked for.

And use that generic kernel at least until you solve the issue.

Last edited by LuckyCyborg; 06-04-2022 at 03:15 AM.
 
Old 06-04-2022, 03:41 AM   #20
LuckyCyborg
Senior Member
 
Registered: Mar 2010
Posts: 3,516

Rep: Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338
Quote:
Originally Posted by henca View Post
Yes, you could probably make a custom kernel package where a more complex doinst.sh also creates the slimmed initrd, but then you would get installations where it is not so easy to move harddrives between machines.
WHAT?

The usage of an initrd is the greatest solution for making hard drives easy to move between machines. By using UUIDs for partitions. In fact, the single way to use UUIDs in the boot stage is to use an initrd, because it's init script translate them to the real devices.

It's a so great solution for this, that I use it to create Slackware full installations in external USB hard drives, supposed to boot anywhere, with the boot drive randomly changing between /dev/sda and /dev/sdz , depending on host box.

You are kind to tell me more about where you heard/read that "you would get installations where it is not so easy to move harddrives between machines" ?

Last edited by LuckyCyborg; 06-04-2022 at 03:54 AM.
 
Old 06-04-2022, 03:51 AM   #21
LuckyCyborg
Senior Member
 
Registered: Mar 2010
Posts: 3,516

Rep: Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338
Quote:
Originally Posted by enorbet View Post
Since 2 steps (at the least) is more complex than just 1, the difference isn't ZERO. Having to repeat it only adds to it. Your way ids fine for you. Mine works for me and I find it substantially simpler. I avoid automation whenever I can. Step-by-step the end result is simpler, less complex. Small steps, Brother.
Excuse me, BUT about what 2 steps vs. 1 step you talk?

The tipicall kernel update is upgrading the huge kernel and modules packages and runing LILO or ELILOCONFIG. Means: 2 steps.

What I do is upgrading the generic kernel and modules packages and running this particular script. Means: 2 steps.

The complexity of upgrading the kernels is equal for me.

Oh, wait! According with you, it's building a custom tailored kernel "substantially simpler" to handle than adding a line in a bootloader config file? That's substantially simpler?

Don't understand me wrong - I consider the usage of huge kernel a quite bad habit, just like is the smoking. Out of respect for your freedom of choices, I will never tell you to quit smoking, BUT I truly disagree with the smoking advertising.

Last edited by LuckyCyborg; 06-04-2022 at 04:06 AM.
 
1 members found this post helpful.
Old 06-04-2022, 04:27 AM   #22
karthik_holla
Member
 
Registered: Jul 2016
Location: India
Distribution: slackware-15.0
Posts: 73

Original Poster
Rep: Reputation: Disabled
dmesg is posted here https://pastebin.com/pkUjEvD5

Last edited by karthik_holla; 06-04-2022 at 04:29 AM.
 
Old 06-04-2022, 04:29 AM   #23
karthik_holla
Member
 
Registered: Jul 2016
Location: India
Distribution: slackware-15.0
Posts: 73

Original Poster
Rep: Reputation: Disabled
And my xorg logs can be found https://pastebin.com/pBA5hZhD
Sorry for the time wasting.
 
Old 06-04-2022, 04:55 AM   #24
LuckyCyborg
Senior Member
 
Registered: Mar 2010
Posts: 3,516

Rep: Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338Reputation: 3338
@OP

For the Intel Iris graphics you should use the "modesetting" driver, not the "intel" one.

So, remove all files from /etc/X11/xorg.conf.d or any /etc/X11/xorg.conf files and create a file /etc/X11/xorg.conf.d/20-intel.conf with this contents:

Code:
Section "Device"
    Identifier  "Intel Graphics"
    Driver      "modesetting"
EndSection
And reboot the system.

Then please show again the latest xorg log file and this time also the output of "lspci -v"

Last edited by LuckyCyborg; 06-04-2022 at 05:20 AM.
 
Old 06-04-2022, 06:28 AM   #25
karthik_holla
Member
 
Registered: Jul 2016
Location: India
Distribution: slackware-15.0
Posts: 73

Original Poster
Rep: Reputation: Disabled
This is my new xorg.0.log https://pastebin.com/ZYjP5Zs7

And lspci -v
Code:
00:00.0 Host bridge: Intel Corporation Broadwell-U Host Bridge -OPI (rev 09)
        Subsystem: Dell Broadwell-U Host Bridge -OPI
        Flags: bus master, fast devsel, latency 0
        Capabilities: [e0] Vendor Specific Information: Len=0c <?>
        Kernel driver in use: bdw_uncore

00:02.0 VGA compatible controller: Intel Corporation HD Graphics 5500 (rev 09) (prog-if 00 [VGA controller])
        DeviceName:  Onboard IGD
        Subsystem: Dell HD Graphics 5500
        Flags: bus master, fast devsel, latency 0, IRQ 52
        Memory at a8000000 (64-bit, non-prefetchable) [size=16M]
        Memory at b0000000 (64-bit, prefetchable) [size=256M]
        I/O ports at 4000 [size=64]
        Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
        Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit-
        Capabilities: [d0] Power Management version 2
        Capabilities: [a4] PCI Advanced Features
        Kernel driver in use: i915
        Kernel modules: i915

00:03.0 Audio device: Intel Corporation Broadwell-U Audio Controller (rev 09)
        Subsystem: Dell Broadwell-U Audio Controller
        Flags: bus master, fast devsel, latency 0, IRQ 53
        Memory at a9214000 (64-bit, non-prefetchable) [size=16K]
        Capabilities: [50] Power Management version 2
        Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit-
        Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel

00:14.0 USB controller: Intel Corporation Wildcat Point-LP USB xHCI Controller (rev 03) (prog-if 30 [XHCI])
        Subsystem: Dell Wildcat Point-LP USB xHCI Controller
        Flags: bus master, medium devsel, latency 0, IRQ 47
        Memory at a9200000 (64-bit, non-prefetchable) [size=64K]
        Capabilities: [70] Power Management version 2
        Capabilities: [80] MSI: Enable+ Count=1/8 Maskable- 64bit+
        Kernel driver in use: xhci_hcd
        Kernel modules: xhci_pci

00:16.0 Communication controller: Intel Corporation Wildcat Point-LP MEI Controller #1 (rev 03)
        Subsystem: Dell Wildcat Point-LP MEI Controller
        Flags: bus master, fast devsel, latency 0, IRQ 48
        Memory at a921c000 (64-bit, non-prefetchable) [size=32]
        Capabilities: [50] Power Management version 3
        Capabilities: [8c] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Kernel driver in use: mei_me
        Kernel modules: mei_me

00:1b.0 Audio device: Intel Corporation Wildcat Point-LP High Definition Audio Controller (rev 03)
        Subsystem: Dell Wildcat Point-LP High Definition Audio Controller
        Flags: bus master, fast devsel, latency 32, IRQ 49
        Memory at a9210000 (64-bit, non-prefetchable) [size=16K]
        Capabilities: [50] Power Management version 3
        Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel

00:1c.0 PCI bridge: Intel Corporation Wildcat Point-LP PCI Express Root Port #1 (rev e3) (prog-if 00 [Normal decode])
        Flags: bus master, fast devsel, latency 0, IRQ 42
        Bus: primary=00, secondary=04, subordinate=04, sec-latency=0
        I/O behind bridge: 00002000-00002fff [size=4K]
        Memory behind bridge: a7900000-a7afffff [size=2M]
        Prefetchable memory behind bridge: 00000000a7b00000-00000000a7cfffff [size=2M]
        Capabilities: [40] Express Root Port (Slot+), MSI 00
        Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
        Capabilities: [90] Subsystem: Dell Wildcat Point-LP PCI Express Root Port
        Capabilities: [a0] Power Management version 3
        Kernel driver in use: pcieport

00:1c.2 PCI bridge: Intel Corporation Wildcat Point-LP PCI Express Root Port #3 (rev e3) (prog-if 00 [Normal decode])
        Flags: bus master, fast devsel, latency 0, IRQ 43
        Bus: primary=00, secondary=06, subordinate=06, sec-latency=0
        I/O behind bridge: [disabled]
        Memory behind bridge: a9100000-a91fffff [size=1M]
        Prefetchable memory behind bridge: [disabled]
        Capabilities: [40] Express Root Port (Slot+), MSI 00
        Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
        Capabilities: [90] Subsystem: Dell Wildcat Point-LP PCI Express Root Port
        Capabilities: [a0] Power Management version 3
        Capabilities: [100] Null
        Capabilities: [200] L1 PM Substates
        Kernel driver in use: pcieport

00:1c.3 PCI bridge: Intel Corporation Wildcat Point-LP PCI Express Root Port #4 (rev e3) (prog-if 00 [Normal decode])
        Flags: bus master, fast devsel, latency 0, IRQ 44
        Bus: primary=00, secondary=07, subordinate=07, sec-latency=0
        I/O behind bridge: 00003000-00003fff [size=4K]
        Memory behind bridge: a9000000-a90fffff [size=1M]
        Prefetchable memory behind bridge: 00000000c0000000-00000000c00fffff [size=1M]
        Capabilities: [40] Express Root Port (Slot+), MSI 00
        Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
        Capabilities: [90] Subsystem: Dell Wildcat Point-LP PCI Express Root Port
        Capabilities: [a0] Power Management version 3
        Capabilities: [100] Null
        Capabilities: [200] L1 PM Substates
        Kernel driver in use: pcieport

00:1c.4 PCI bridge: Intel Corporation Wildcat Point-LP PCI Express Root Port #5 (rev e3) (prog-if 00 [Normal decode])
        Flags: bus master, fast devsel, latency 0, IRQ 45
        Bus: primary=00, secondary=08, subordinate=08, sec-latency=0
        I/O behind bridge: [disabled]
        Memory behind bridge: [disabled]
        Prefetchable memory behind bridge: [disabled]
        Capabilities: [40] Express Root Port (Slot+), MSI 00
        Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
        Capabilities: [90] Subsystem: Dell Wildcat Point-LP PCI Express Root Port
        Capabilities: [a0] Power Management version 3
        Capabilities: [100] Null
        Capabilities: [200] L1 PM Substates
        Kernel driver in use: pcieport

00:1d.0 USB controller: Intel Corporation Wildcat Point-LP USB EHCI Controller (rev 03) (prog-if 20 [EHCI])
        Subsystem: Dell Wildcat Point-LP USB EHCI Controller
        Flags: bus master, medium devsel, latency 0, IRQ 21
        Memory at a921a000 (32-bit, non-prefetchable) [size=1K]
        Capabilities: [50] Power Management version 3
        Capabilities: [58] Debug port: BAR=1 offset=00a0
        Capabilities: [98] PCI Advanced Features
        Kernel driver in use: ehci-pci
        Kernel modules: ehci_pci

00:1f.0 ISA bridge: Intel Corporation Wildcat Point-LP LPC Controller (rev 03)
        Subsystem: Dell Wildcat Point-LP LPC Controller
        Flags: bus master, medium devsel, latency 0
        Capabilities: [e0] Vendor Specific Information: Len=0c <?>
        Kernel driver in use: lpc_ich
        Kernel modules: lpc_ich

00:1f.2 SATA controller: Intel Corporation Wildcat Point-LP SATA Controller [AHCI Mode] (rev 03) (prog-if 01 [AHCI 1.0])
        Subsystem: Dell Wildcat Point-LP SATA Controller [AHCI Mode]
        Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 46
        I/O ports at 40b0 [size=8]
        I/O ports at 40a0 [size=4]
        I/O ports at 4090 [size=8]
        I/O ports at 4080 [size=4]
        I/O ports at 4060 [size=32]
        Memory at a9219000 (32-bit, non-prefetchable) [size=2K]
        Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
        Capabilities: [70] Power Management version 3
        Capabilities: [a8] SATA HBA v1.0
        Kernel driver in use: ahci

00:1f.3 SMBus: Intel Corporation Wildcat Point-LP SMBus Controller (rev 03)
        Subsystem: Dell Wildcat Point-LP SMBus Controller
        Flags: medium devsel, IRQ 18
        Memory at a9218000 (64-bit, non-prefetchable) [size=256]
        I/O ports at 4040 [size=32]
        Kernel driver in use: i801_smbus
        Kernel modules: i2c_i801

06:00.0 Network controller: Intel Corporation Wireless 3160 (rev 83)
        Subsystem: Intel Corporation Dual Band Wireless AC 3160
        Flags: bus master, fast devsel, latency 0, IRQ 50
        Memory at a9100000 (64-bit, non-prefetchable) [size=8K]
        Capabilities: [c8] Power Management version 3
        Capabilities: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Capabilities: [40] Express Endpoint, MSI 00
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [140] Device Serial Number e4-02-9b-ff-ff-47-d7-cc
        Capabilities: [14c] Latency Tolerance Reporting
        Capabilities: [154] Vendor Specific Information: ID=cafe Rev=1 Len=014 <?>
        Kernel driver in use: iwlwifi
        Kernel modules: iwlwifi

07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL810xE PCI Express Fast Ethernet controller (rev 07)
        Subsystem: Dell RTL810xE PCI Express Fast Ethernet controller
        Flags: bus master, fast devsel, latency 0, IRQ 19
        I/O ports at 3000 [size=256]
        Memory at a9000000 (64-bit, non-prefetchable) [size=4K]
        Memory at c0000000 (64-bit, prefetchable) [size=16K]
        Capabilities: [40] Power Management version 3
        Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
        Capabilities: [70] Express Endpoint, MSI 01
        Capabilities: [b0] MSI-X: Enable+ Count=4 Masked-
        Capabilities: [d0] Vital Product Data
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [140] Virtual Channel
        Capabilities: [160] Device Serial Number 01-00-00-00-36-4c-e0-00
        Capabilities: [170] Latency Tolerance Reporting
        Kernel driver in use: r8169
        Kernel modules: r8169
 
Old 06-04-2022, 09:05 AM   #26
zeebra
Senior Member
 
Registered: Dec 2011
Distribution: Slackware
Posts: 1,832
Blog Entries: 17

Rep: Reputation: 638Reputation: 638Reputation: 638Reputation: 638Reputation: 638Reputation: 638
Quote:
Originally Posted by karthik_holla View Post
dmesg is posted here https://pastebin.com/pkUjEvD5
LSM security framework initialized? Do you enforce it in any way? (doesn't seem you do from dmesg)
Otherwise, nothing abnormal in there.

Quote:
Originally Posted by karthik_holla View Post
And my xorg logs can be found https://pastebin.com/pBA5hZhD
Sorry for the time wasting.
From reading that it seems everything is just dandy and should work just fine..
Seems to me the Kernel loads the driver correctly, and Xorg uses it correctly. And pretty much everything else seems fine as well, at least nothing that would prevent startx from working as it should.

What happens if you start with runlevel 4? Same thing?
Can you start Wayland? (dbus-launch startplasma-wayland)

Last edited by zeebra; 06-04-2022 at 09:18 AM.
 
Old 06-04-2022, 10:29 AM   #27
enorbet
Senior Member
 
Registered: Jun 2003
Location: Virginia
Distribution: Slackware = Main OpSys
Posts: 4,784

Rep: Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435Reputation: 4435
Just FTR Lucky Cyborg, I don't use Huge or Generic plus initrd except for the very first boot, if then. I build a custom newer kernel and usually keep it for more than a year. All my boxen are multiboot, and I can copy "/usr/src/linux, /lib/modules/foo, and the 3 files in /boot and they just work with very high performance, more accurate CPU instruction, lower latency, faster timing and very few unnecessary modules. I don't care a whit that some people (probably more than don't) prefer generic + initrd. It is individual choice after all but there are alternatives. Granted geninitrd is substantially better than mkinitrd IMHO but I know I am going to build a custom kernel anyway for increased performance so why not just eliminate an initrd while I'm at it?
 
Old 06-04-2022, 11:04 AM   #28
zeebra
Senior Member
 
Registered: Dec 2011
Distribution: Slackware
Posts: 1,832
Blog Entries: 17

Rep: Reputation: 638Reputation: 638Reputation: 638Reputation: 638Reputation: 638Reputation: 638
Thumbs up

Quote:
Originally Posted by enorbet View Post
increased performance so why not just eliminate an initrd while I'm at it?
I make a Kernel for each computer, I'm not super great at optimizing, but even so it is far more optimized for my situation(s) and my computer. Not sure that is the reason it boots so much faster than with Initrd, but it could partly be a reason.

Just feels rock solid stable as well (and likewise does Slackware15), never any trouble and booting is uncomplicated, if things go wrong I can only blame myself.

Last edited by zeebra; 06-04-2022 at 11:06 AM.
 
Old 06-04-2022, 12:48 PM   #29
henca
Member
 
Registered: Aug 2007
Location: Linköping, Sweden
Distribution: Slackware
Posts: 976

Rep: Reputation: 664Reputation: 664Reputation: 664Reputation: 664Reputation: 664Reputation: 664
Quote:
Originally Posted by LuckyCyborg View Post
You are kind to tell me more about where you heard/read that "you would get installations where it is not so easy to move harddrives between machines" ?
I meant that if you would create a slimmed initrd which only contained the modules needed for your current machine such a drive would not be easy to move around different machines.

Of course it is also possible to create a full featured initrd matching all the hardware support you get from a huge.s kernel, but then, what would be the point of using initrd instead of a huge kernel?

regards Henrik
 
Old 06-04-2022, 01:06 PM   #30
henca
Member
 
Registered: Aug 2007
Location: Linköping, Sweden
Distribution: Slackware
Posts: 976

Rep: Reputation: 664Reputation: 664Reputation: 664Reputation: 664Reputation: 664Reputation: 664
Quote:
Originally Posted by karthik_holla View Post
And my xorg logs can be found https://pastebin.com/pBA5hZhD
It seems to only be one log file from xorg. To find the difference between when things go right and when things go wrong you will need to compare the log file from a failed startx with a log from a successful startx.

regards Henrik
 
1 members found this post helpful.
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
(nvidia) First startx = blank screen, second startx = works ?!? BuckRogers01 Linux - Hardware 2 04-07-2006 05:26 PM
WHY should I type startx twice to startx? hiux Debian 6 09-09-2005 09:12 AM
startx doesn't startx for user vdemuth Mandriva 10 11-08-2004 07:41 PM
Bug / Xwindows / startx : xinit works but startx crash www.rzr.free.fr Linux - Software 4 10-17-2004 08:06 AM
startx vs startx -- :2 (font dimension is different!!) moly82 Linux - General 7 09-15-2003 12:11 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 04:27 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration