Great, now i can join Winxp to my Samba PDC server.
What i do:
1. Add root user to Samba and set new password for it
# smbpasswd -a root
2. Then i go to delete the existed machine account and re-create it again
# useradd -g 100 -d /dev/null -s /bin/false -c "win xp box" -M winxp$
# passwd -l winxp
# smbpasswd -a -m winxp
I don't know why i did add the add user script to smb.conf file but it doesn't work so i have to create user manually
add user script = /usr/sbin/useradd -d /dev/null -g 100 -s /bin/false -M %u
3. Try to join to domain from XP. I can logon. But while logging on, i got message say that can not load a profile, have to use a local profile and not update to server.