Adding to Patrick's finding,
I would also like to add followings (found from 22.1 User guide also):
"The following rules apply to UDP broadcast packets handled by this feature:
• If the UDP profile includes BOOTP or DHCP, it is handled according to guidelines specified in RFC
1542.
• If the UDP profile includes other types of traffic, these packets have the IP destination address
modified as configured, and changes are made to the IP and UDP checksums and TTL field
(decrements), as appropriate.
If UDP Forwarding is used for BOOTP or DHCP forwarding purposes, do not configure or use the
existing bootprelay function. However, if the previous bootprelay functions are adequate, you may
continue to use them.
[Note]
When using udp-profile to forward dhcp request, the behavior will be different from
bootprelay. Where bootprelay will forward the dhcp packet with the client vlan IP as source IP,
udp-profile will forward the dhcp packet with the source IP of the egress vlan towards the
destination server.
UDP Forwarding only works across a Layer 3 boundary and currently, UDP Forwarding can be
applied to IPv4 packets only, not to IPv6 packets."
It seems like there is no precedence between bootprelay and UPD-profile with Karthik's local test result but the behavior looks a bit different...